﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Alex.Library.Cloud.Libs
{
    public interface IVMReference
    {
        string InstanceUUID { get; set; }
        string VMName { get; set; }
        string GuestOsId { get; set; }
        string GuestOsName { get; set; }
        string GuestOsFamily { get; set; }
        string HostName { get; set; }
        string FilePath { get; set; }
        string PrimaryIPv4 { get; set; }
        string PrimaryMac { get; set; }
        bool? IsTemplate { get; set; }
        DateTime? ModifiedTime { get; set; }
        int? CPUCount { get; set; }
        int? MemoryMB { get; set; }
        int? DiskGB { get; set; }
        VMPowerState PowerState { get; set; }
    }

    public enum VMPowerState
    {
        PowerOff = 0,
        PowerOn = 1,
        Suspended = 2 //in Hyper-V, it is "Save"
    }
}
